﻿using System;
using System.ComponentModel.DataAnnotations;

namespace WebMvc.Models
{
    /// <summary>
    /// 泛型实体基类
    /// </summary>    
    public abstract class BaseT
    {
        public BaseT()
        {
            IsDeleted = false;
        }

        [Key]
        [Display(Name = "序号")]
        public int Id { get; set; }

        //创建人，在创建时自动添加，在修改时则不应改动
        [Display(Name = "创建人")]
        public int CreatedBy { get; set; }

        //创建时间，在创建时自动赋值，在修改时则不应改动
        [Display(Name = "创建时间")]
        public DateTime CreatedOn { get; set; }

        //修改人，在创建时自动赋值，在修改时亦自动赋值
        [Display(Name = "修改人")]
        public int UpdatedBy { get; set; }

        //修改时间，在创建时自动赋值，在修改进亦自动赋值
        [Display(Name = "修改时间")]
        public DateTime UpdatedOn { get; set; }

        //是否删除，为了保存数据表索引的完整，定义此变量实现伪删除，创建或修改T时，不改变
        [Display(Name = "是否删除")]
        public bool IsDeleted { get; set; }

        //排序字段
        [Display(Name = "排序")]
        public int SortIndex { get; set; }

        //备注
        [Display(Name = "备注")]
        public string Remarks { get; set; }
    }
}
